Digital 3D/360 degree camera system

ABSTRACT

The digital 3D/360° camera system is an omnidirectional stereoscopic device for capturing image data that may be used to create a 3-dimensional model for presenting a 3D image, a 3D movie, or 3D animation. The device uses multiple digital cameras, arranged with overlapping fields of view, to capture image data covering an entire 360° scene. The data collected by one, or several, digital 3D/360° camera systems can be used to create a 3D model of a 360° scene by using triangulation of the image data within the overlapping fields of view.

This is a continuation application of application Ser. No. 14/149,453, filed Jan. 7, 2014 (now allowed), which is a continuation of application Ser. No. 13/606,175, filed Sep. 7, 2012 (now U.S. Pat. No. 8,659,640), which is a continuation of application Ser. No. 12/289,892, filed Nov. 6, 2008 (now U.S. Pat. No. 8,274,550), which is a division of application Ser. No. 10/452,726, filed Jun. 3, 2003 (now U.S. Pat. No. 7,463,280), all of which are hereby incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to the field of image recording devices, and more particularly to a digital 3D/360 degree camera system. The digital 3D/360° camera system utilizes a plurality of stereoscopic camera pairs to capture image data covering an entire 360 scene that may be used to create a 3D image, a 3D movie, or 3D animation.

2. Description of the Related Art

The advent of digital cameras of increasing resolution and photo quality, along with constantly increasing speed and processing power of computers, has laid the foundation for a 3-dimensional, 360° digital camera system capable of capturing image data for the creation of 3-dimensional images, movies, animation, and telepresence.

3-dimensional photography is not new. 3-dimensional photography has been available for over one hundred years through stereoscopic cameras. In a stereoscopic camera system, two cameras are used to capture a scene, each from a slightly different vantage point. The camera configuration is typically similar to the human eyes; with two cameras side-by-side and capturing two separate, but largely overlapping, views. The two images are viewed together through a stereoscopic viewer, giving the visual perception of three dimensions where the images overlap.

U.S. Pat. No. 1,957,043, issued to J. Harlow on May 1, 1934, describes a stereoscopic camera and viewing device. Such simple stereoscopic photography does nothing to achieve an expanded or panoramic field of view. Additionally, because the result of a stereoscopic photo is intended for direct human viewing through a stereoscopic viewer, the camera and the images it produces must conform to constraints of comfortable human viewing. For optimal human stereographic viewing, the field of view and the degree of overlap of the images must approximate the human eyes. Modern digital image processing can use computer technology to take advantage of images that fall well outside of these constraints, since images may be taken for the purpose of digital processing and not for direct human viewing.

Panoramic photography, the taking of a photograph or photographs covering a field of view that is wide to an entire 360° panorama, has a long history in photography. Perhaps the most primitive method of panoramic photography is the taking of several adjoining photos with a conventional camera and then mounting the prints together in alignment to achieve a complete panorama. Modern techniques adapt this method by using digital cameras to capture the image, and then using computer image processing techniques to align the images for printing as a single panoramic image.

U.S. Pat. No. 5,646,679, issued on Jul. 8, 1997 to K. Yano et al., discloses an image combining method and apparatus that uses a pair of digital cameras to capture separate overlapping images. The overlapping portions of the images are used to correlate the images for alignment. With the separate images aligned, a single image over a wide field of view may be created. An image processing system then combines the images for viewing.

U.S. Pat. No. 6,005,987, issued to M. Nakamura et al. on Dec. 21, 1999, shows a picture image forming apparatus that similarly forms a panoramic picture image by joining separate picture images. Like Yano, the Nakamura apparatus uses the overlapping regions of the images to align and join the images. The Nakamura apparatus additionally corrects deviations and distortions in the overlap regions.

While achieving improved panoramic photography, these methods do not provide the visual image data necessary to produce a 3-dimensional image or model. Additionally, where a panorama is composed of several individually exposed images, the result is limited in quality and utility by the dimension of time. Where the several images are exposed separately over a period of time, elements in the scene that may have moved are captured in different positions in the separate images. The result may be an image with unsynchronized moving elements within the exposures, rendering the images difficult or impossible to join, or a joined panoramic view with double images.

An alternative method of capturing a panoramic image is to capture the entire panorama in a single exposure. One such approach has been to use a camera with a rotating lens, or a rotating camera. In a film camera, a rotating lens can expose a strip of film as the lens sweeps the entire 360° view.

Another approach to a single-exposure panoramic camera is disclosed in U.S. Patent Publication No. 2001/0010555, published on Aug. 2, 2001. The panoramic camera uses a convex mirror to capture a 360° panorama in a 2-dimensional annular form. The annular image, digitally captured, is digitally transformed into a 2-dimensional rectangular image. While this approach solves the time-dimension problem by capturing the entire panoramic view in a single exposure, the result remains a 2-dimensional image that does not provide the image data needed to produce a 3-dimensional model or image.

U.S. Patent Publication No. 2001/0020976, published on Sep. 13, 2001, describes a stereo panoramic camera arrangement. This arrangement joins two panoramic cameras into a stereoscopic pair. In each of the cameras, a specialized mirror, or fresnel lens, is used to redirect the panoramic image for recording. One embodiment presented requires a cylindrical, rather than planar, optical element to record the image. Thus, while providing a panoramic camera with stereoscopic capability, this is not a solution that lends itself to the use of readily available and simple digital cameras.

U.S. Pat. No. 5,495,576, issued on Feb. 27, 1996 to K. Ritchie, discusses an audio-visual system that incorporates cameras to capture panoramic imagery, along with shape sensors to determine the 3-dimensional shape of a scene. The captured image is mapped to the shape to create a 3-dimensional model that may be processed for display on various 3-D display systems. The shape sensors are essentially radar, sonar, or similar sensors arrayed along with the cameras. The shape sensors function to gather information about the shape of objects in the field of view, primarily in terms of distance to the surface of the objects. Thus, the 3-dimensional model is the result of a combination of data sources rather than a product based strictly on stereoscopic image data.

U.S. Pat. No. 5,023,725, issued on Jun. 11, 1991 to D. McCutchen, discloses a dodecahedral imaging system in which several cameras are arranged in a dodecahedron. Along with the camera system, McCutchen discloses a projection dome with a dodecahedral shape to match the camera. While the system captures video of a generally spherical field of view for projection onto the interior surface of a dome or spherical theater, the video is not 3-dimensional. The cameras are not oriented to provide stereoscopic fields of view. The field of view of each camera is, in fact, cropped to align the various views for projection onto the interior of the dodecahedral dome with no overlap.

None of the above inventions and patents, taken either singly or in combination, is seen to describe the instant invention as claimed. Thus a digital 3D/360° camera system solving the aforementioned problems is desired.

SUMMARY OF THE INVENTION

The digital 3D/360° camera system uses several digital cameras to capture image data that is necessary to create an accurate digital model of a 3-dimensional scene. This model may be used to produce a 3-D image, a 3-D movie, 3-D animation, or other visual 3-dimensional product. The image data captured may also be used for creation of 2-dimensional panoramic images and, with certain configurations, human viewable stereoscopic images. The cameras are oriented so that each camera's field of view overlaps with the field of view of at least one other camera to form a stereoscopic field of view. The image data from the stereoscopic fields of view may be processed, using stereoscopic techniques, to create a full 3-dimensional model. For accuracy of the image data, the cameras are rigidly mounted together on a housing and their precise geometry is determined by a calibration process. The cameras are commanded simultaneously, or in synchronization within 1 ms or less, to capture their images.

In the simplest embodiment of >the invention, the cameras are mounted on a square housing with a pair of cameras on each of four faces of the square. The cameras, configured as stereoscopic pairs, are aimed in a “north, south, east, west” fashion so that each stereoscopic pair captures a separate quadrant of a 360-degree field of view in a stereoscopic field of view. The stereoscopic field of view is the region that is visible to both cameras in a stereoscopic pair, where their fields of view overlap. The field of view of the cameras used dictates the amount of overlap of the members of a stereoscopic pair, as well as the size of blind spots between cameras and between adjacent quadrants. An alternate embodiment adds stereoscopic pairs in a more complex geometric arrangement, while another embodiment distributes the cameras uniformly around a sphere.

When disposed in either a circular arrangement or a spherical arrangement, the cameras are no longer grouped in literal stereoscopic pairs. Instead, each camera may be considered in stereoscopic partnership with each of the adjacent cameras. When disposed in a spherical arrangement, the digital 3D/360° degree camera system captures a full spherical view in an optimal arrangement for rendering of a 3-dimensional model.

The cameras are controlled by a computer that manages data describing the physical geometry of ′ the cameras and their relationship to one another, commands the cameras simultaneously to capture image data, reads, saves and stores the image data, and exports the image data for processing.

Multiple digital 3D/360° camera systems may be used in cooperation at separate locations to gather more comprehensive 3-dimensional image data for a larger scene or region.

Accordingly, it is a principal object of the invention to provide a digital 3D/360° camera system that captures stereoscopic image data that is necessary to create an accurate model of a 3-dimensional scene.

It is another object of the invention to provide a digital 3D/360° camera system that captures stereoscopic image data that is necessary to create an accurate model of a fully panoramic 360°, 3-dimensional scene.

It is a further object of the invention to provide a digital 3D/360° camera system that incorporates multiple cameras disposed to capture image data in multiple stereoscopic fields of view.

Still another object of the invention is to provide a digital 3D/360° camera system that eliminates time-errors in a multi-image stereoscopic camera system by simultaneous operation of numerous cameras.

It is an object of the invention to provide improved elements and arrangements thereof for the purposes described which is inexpensive, dependable and fully effective in accomplishing its intended purposes.

These and other objects of the present invention will become readily apparent upon further review of the following specification and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A is a perspective view of a digital 3D/360° camera system according to the present invention.

FIG. 1B is a perspective view of a digital 3D/360° camera system according to the present invention, optionally equipped with additional pairs of upward and downward oriented cameras.

FIG. 2 is a top view of a digital 3D/360° camera system according to the present invention, showing the camera fields of view and blind spots.

FIG. 3 is a perspective view of an alternate embodiment of the digital 3D/360° camera system having additional stereoscopic camera pairs.

FIG. 4 is a top view of an alternate embodiment of the digital 3D/360° camera system having digital cameras in a circular arrangement.

FIG. 5 is a perspective view of an embodiment of the digital 3D/360° camera system having digital cameras in a spherical arrangement.

FIG. 6 is a block diagram of the digital 3D/360° camera system according to the present invention.

FIG. 7 is a flow chart describing the steps of capturing image data with the digital 3D/360° camera system according to the present invention.

FIG. 8A is a diagrammatic illustration of the field of view of a digital camera expressed as an array of pixels.

FIG. 8B is a diagrammatic illustration of the field of view of a digital camera expressed 3-dimensionally as an array of pixel vectors.

FIG. 9 is a schematic illustration of the field of view of a camera in relation to a reference point that is the origin of a 3-dimensional XYZ coordinate system.

FIG. 10 is a diagram illustrating a plurality of digital cameras, each with their own camera reference point, relative to a system reference point and XYZ coordinate system.

FIG. 11A is a diagram showing the field of view of digital camera 30 a in FIG. 10.

FIG. 11B is a diagram showing the field of view of digital camera 30 b in FIG. 10.

FIG. 12 is a diagram illustrating a method of resolving pixel vectors into a known position in the XYZ coordinate system relative to the system reference point.

Similar reference characters denote corresponding features consistently throughout the attached drawings.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

The present invention is a digital 3D/360 camera system, designated generally as 10 in the drawings. The digital 3D/360° camera system 10 has a housing 20 with a number of digital cameras 30 mounted thereon, the digital cameras 30 being oriented so that each camera's field of view overlaps with the field of view of at least one other camera to form a stereoscopic field of view. In the simplest embodiment, depicted in FIG. 1A, the housing 20 is square and the cameras 30 are arranged in stereoscopic pairs with each stereoscopic pair covering a separate quadrant of a full 360° view. FIG. 1B shows an alternate embodiment wherein an additional stereoscopic pair of digital cameras 30 is oriented with an upward view, and an additional stereoscopic pair of digital cameras 30 is oriented with a downward view.

In traditional stereoscopic photography, two cameras in a stereoscopic pair are spaced about two inches apart and each has a view angle that simulates the human eye. This recreates a 3-dimensional view that is comfortable for human viewing. However, the digital 3D/360° camera system 10 functions to capture data that will be processed by a computer into a 3-dimensional model. Thus, the geometry of the digital cameras 30 and their fields of view are free from the constraints imposed on traditional stereoscopic photography. Regardless of the geometry of the cameras 30, the cameras 30 are rigidly mounted and their precise geometry is known. The digital cameras 30 may be spaced any distance apart. For example, a digital 3D/360° camera system 10 used inside a room or to capture a small scene may be constructed with the cameras separated by only inches, while a digital 3D/360° camera system 10 used to cover an airport or a city block may be constructed with the cameras separated by several feet. With the digital cameras 30 arranged in stereoscopic pairs where each pair captures a single quadrant of the 360-degree field, the lenses should have a field of view of about 100°.

FIG. 2 shows a top view of the digital 3D/360° camera system 10, along with the field of view for each of the digital cameras 30. The view angle is depicted as α_(L) for a left-side member of a stereoscopic pair, shown extending from reference line 36 to reference line 38, and α_(R) for a right-side member, shown extending from reference line 32 to reference line 34. For a given stereoscopic pair, it can be seen that there is a region α_(LR) where the fields of view overlap. The overlapping region α_(LR), also referred to as the stereoscopic field of view, defines the area where stereoscopic image data is useful for 3-dimensional modeling. It can also be seen that blind spots exist, along with regions that are seen by only a single digital camera 30. The size of each of these regions will depend on the field of view used.

It can be appreciated that selection of the camera fields of view involves a tradeoff between maximized coverage and resolution. An increased field of view will, of course, improve the amount of image data that can be captured, and in particular increase the amount of useful stereoscopic data as the size of the stereoscopic field of view is increased. However, as the view angle is increased the resolution is decreased. This is illustrated by considering a hypothetical digital camera with a resolution of 4,000 by 4,000 pixels and a field of view of 100°. Dividing 100° by 4,000 pixels gives coverage of 1/40 of a degree per pixel. This yields a resolution of about 1 cm at 23 meters. As digital camera technology improves the resolution will improve. Digital camera resolution has followed Moore's law for semiconductors and has doubled about every year or two, and trend is expected to continue for at least the next fifteen years. An alternate solution to increasing the resolution is to simply use more cameras, each covering a smaller field of view.

FIG. 3 shows an embodiment of the digital 3D/360° camera system 10 having additional stereoscopic pairs of digital cameras 30. The stereoscopic pairs of digital cameras 30 are arranged so that each stereoscopic pair covers a single octant, rather than a quadrant, of the 360-degree field of view. Thus, the digital cameras 30 may use a field of view of only 50° to achieve full coverage and gain a two-fold increase in the image resolution in comparison to a 100° field of view.

Another embodiment, shown in FIG. 4, moves away from an arrangement with the digital cameras 30 grouped in literal stereoscopic pairs. Instead, the digital cameras 30 are disposed uniformly surrounding a circular housing. In this arrangement, each digital camera 30 shares a stereoscopic field of view with each of its adjacent digital cameras 30. As illustrated, a field of view β₃ overlaps with the field of view β₂ to form the stereoscopic field of view β₂₃, and also overlaps with the field of view β₄ to form the stereoscopic field of view β₃₄.

An additional embodiment extends the circular arrangement of digital cameras 30 into a full sphere, such as shown in FIG. 5, with the digital cameras around a spherical housing. The spherical arrangement distributed of digital cameras 30 allows the maximum coverage, gathering not only a 360° panorama, but gathering total image data for a scene.

It can now be appreciated that a variety of embodiments, each with a differing number and arrangement of digital cameras 30, may be employed. A common feature among all of the embodiments is that the digital cameras 30 are in fixed positions, and are arranged so that each digital camera 30 has a field of view that overlaps with the field of view of at least one other digital camera 30 to form a stereoscopic field of view. The multiple stereoscopic fields of view provided by the multiple combinations of digital cameras 30 provide the 3-dimensional image data that is necessary for accurate 3-dimensional modeling.

The digital cameras 30 are under the control of a controller 60, which is depicted schematically in FIG. 6. The controller 60 is a system that includes a CPU 40, a memory 42, a mass storage device 44, a clock 48, an external communication interface 46, and a camera interface 50. The system could be a general-purpose computer system such as a Personal Computer (PC), or a custom-designed computer system. The controller 60 could be located externally from the housing 20, but it is preferred that the controller 60 be contained within the housing 20.

The digital cameras 30 have a command and data interface that is in connection with the camera interface 50. Commercially available digital cameras are typically available with a Universal Serial Bus (USB), FireWire, or another interface for command and data transfer. Thus, the camera interface 50 includes a USB, FireWire, or another interface for command and data transfer. Additionally it is desirable, although not necessary, that the digital cameras 30 be equipped with a single digital control line that will allow a digital signal to cause the digital camera 30 to capture an image. Use of a single digital control line allows all of the digital cameras 30 to be commanded simultaneously, by a single digital control signal, to capture an image.

The clock 48 is used to schedule image capture, to tag image data files that are captured, and to synchronize command of the digital cameras 30. Because an accurate time reference is needed for all of these functions, the clock 48 should have a resolution and accuracy within 0.1 ms. Additionally, a time base that is accurate and synchronized to, or based on, a common standard time reference, such as Universal Coordinated Time (UTC), facilitates synchronization of multiple digital 3D/360° camera systems 10 in applications using multiple digital 3D/360° camera systems 10 in order to capture additional points of view.

The external communication interface 46 may be any data communication interface, and may employ a wired, fiber-optic, wireless, or another method for connection with an external device. Ethernet or wireless-Ethernet are exemplary.

The controller 60 may optionally include location and orientation sensors 54 to determine the location and orientation of the digital 3D/360° camera system. For example, a global positioning system (GPS) receiver is useful where the geographic position of the digital 3D/360° camera system 10 must be captured along with the image data. A digital magnetic compass can be used to determine the orientation of the digital 3D/360 camera system in relation to magnetic north.

A computer software program, stored on the mass storage device 44 and executed in the memory 42 by the processor 40, directs the controller to perform various functions, such as receiving commands from an external device on the external communication interface, managing data files defining the precise geometry of the digital cameras 30, commanding the digital cameras 30 to capture image data, tagging and storing image data files, and delivering the image data files to an external device. The function of managing data files defining the precise geometry of the digital cameras 30 may include performing calibration steps to create the data files, or downloading the data files from an external source.

The image data captured by the digital 3D/360° camera system 10 may be used to create 3-dimensional images and models. For 3-dimensional imaging and modeling, it is necessary to know the precise geometry of each camera 30 in the system, including each pixel.

A digital camera captures images as an array of pixels, as illustrated by FIG. 8A which shows an image of a flag F mapped onto a pixel array. From a 3-dimensional perspective, the digital camera's image can also be considered as an array of pixel vectors V_(p), illustrated in FIG. 8B. Each vector is a straight line from the cameras lens to objects in the field of view. A pixel vector V_(p) can be defined by identifying a camera reference point R_(c) in 3D space as the beginning of the pixel vector V_(p), and a “directional vector” defining the pixel vector's path. Every pixel in a camera has a unique pixel vector V_(p). Thus, a pixel vector map for a camera is a definition of the paths of every pixel in the camera.

The reference point R_(c) and directional vector for each pixel vector V_(p) will be static if the lens has a fixed focus. If the lens has variable focus, the reference point R_(c) and directional vectors change along with the change in focus. For a variable focus lens, multiple pixel maps for different focus settings are necessary in order to maintain maximum accuracy.

In an accurate fixed focus lens, the reference point R_(c) can be considered the same as the optical center of the lens, and is the same for each pixel vector V_(p).

The pixel vector map for a camera can be created by analysis of the camera's design specs, or through a mechanical calibration process. Calibration can be performed by exposing each pixel in the camera to two distinct known points in 3D space. Since each pixel vector V_(p) is a straight line, and two points describe a straight line, this procedure can be used to determine the camera's pixel vector map.

A pixel vector map is created for each digital camera 30 in the digital 3D/360° camera system 10. The pixel vector map for each camera includes a definition of a coordinate system in relation to the camera. For example, as illustrated in FIG. 9, a rectangular XYZ coordinate system could be used. The pixel vector map also defines a reference point Rc for the camera, such as the optical center of the camera. Each pixel in the pixel vector map is uniquely identifiable, such as by the pixel s row and column coordinates. The pixel vector map additionally includes the directional vector for each pixel. In the case of a rectangular XYZ coordinate system, the directional vector may be expressed in signed XYZ format.

If the camera uses a variable focus lens, either multiple pixel vector maps are defined or a single pixel vector map is defined along with a means of correction or interpolation for different focus settings.

The precision of the reference point and each directional vector determines the precision of the digital 3D/360° camera system 10 for 3-dimensional modeling. The pixel vector map for a single camera can be deduced from the camera design, or can be determined by a calibration process.

In the digital 3D/360° camera system 10, a pixel vector map for the entire digital 3D/360° camera system 10 includes the pixel vector map for each individual digital camera 30, along with information that defines the position of each individual digital camera 30 in relation to each of the others. An easy way to accomplish this is to define an XYZ coordinate system and point of origin for the digital 3D/360° camera system 10 and to use that coordinate system when describing each camera s pixel vector map. The reference point for the digital 3D/360° camera system 10, referred to as the system reference point, could be the physical center of the camera assembly, the front of the system, the reference point of a single digital camera, or any other point in 3D space.

Because the digital 3D/360° camera system 10 is used to create accurate 3D models, the actual distances between the reference points of each of the digital cameras 30 must be known. Referring to FIG. 10, for example, if, relative to the digital 3D/360° camera system's 10 reference point, the reference point for digital camera 30 a is (0″, 7″, 0″) and the reference point for digital camera 30 b is at (3″, 3″, 0″), then it can be seen that a vector from digital camera 30 a to digital camera 30 b is (3″, −4″, 0″) and the distance from digital camera 30 a to digital camera 30 b is five inches.

By knowing the internal dimensions of the digital 3D/360° camera system 10 and the precise geometry of the digital cameras 30, dimensions and distances of objects in view of two or more of the digital cameras 30 can be determined. The accuracy with which the internal dimensions and camera geometries are known determines the accuracy of the measurements and models that the digital 3D/360° camera system 10 can make.

Along with the pixel vector map for the digital 3D/360° camera system 10, image data captured by the digital cameras 30 can be used for 3-dimensional modeling by determining the distance between the system reference point and various points of interest in the image data. The distance may be determined for every point of image data that is captured by two or more of the digital cameras 30. Referring to FIG. 10, a flag F is illustrated in the field of view of both camera 30 a and camera 30 b. Turning to FIGS. 11A and 11B, it can be seen that the flag F appears in a different position in the field view of each camera. FIG. 11A illustrates a field of view for camera 30 a, while FIG. 11B illustrates camera 30 b. It can be seen that one pixel, or in 3-dimensional terms one pixel vector, from each camera captures the top of the flagpole, the point of interest for this example.

Shown more clearly in FIG. 12, pixel vector V is the pixel vector for camera 30 a that captures the top of the flagpole, while pixel vector W captures the top of the flagpole in camera 30 b. The top of the flagpole is represented by point C. Each pixel vector is a directional vector, describing the direction from the camera's reference point to point C at the top of the flagpole, but not the distance. A distance vector “a*V”, where “a” is a scalar, defines the line starting at point A, the reference point for camera 30 a, and ending at point C. Similarly, distance vector “b*W”, where “b” is a scalar, defines, for camera 30 b, the line from point B to point C.

What is desired is to know the position of C relative to the system reference point R_(s) The locations of camera reference points A and B are known from their pixel vector map information. The vector U=B−A represents the displacement from A to B. Since V and W are linearly independent, the cross product vector Y=V×W is nonzero. Also, the three vectors U=B−A, V, and W are linearly dependent assuming that C exists. C can now be defined by: C=A+aV=B+bW  (1) where a and b are scalars. Rewriting (1), aV=U+bW  (2) Taking a cross product with W and V, respectively, gives: a(V×W)=(U×W)  (3) and b(W×V)=−(U×V)  (4) which uniquely determines the coefficients a and b. These can be determined using dot products: a=((U×W)·(V×W))/((V×W)·(V×W));  (5) and b=((U×V)·(V×W))/((V×W)·(V×W))  (6) Referring back to (1), and solving for C, C=A+((U×W)·(V×W))/((V×W)·(V×W))V  (7)

Point C, the top of the flagpole* in the current example, has now been located precisely within the XYZ coordinate system of the digital 3D/360° camera system 10. Using the same mathematical analysis, each point within the field of view of the digital 3D/360° camera system 10 may be precisely located in a 3-dimensional coordinate system.

The pixel vector map for the digital 3D/360° camera system 10 is a collection of data that describes the geometry of each of the digital cameras 30 in the system. The pixel vector map data is stored on the mass storage device 44 in a pixel vector map file, along with additional data relating to and describing the digital 3D/360° camera system 10. In practice, the additional data describing the digital 3D/360° camera system 10 may include a serial number, name, model type, or other information describing the digital 3D/360 camera system 10 itself along with serial numbers, type, lens type, and other information describing each of the digital cameras 30 in the digital 3D/360° camera system 10.

In use, the controller 60 functions to command the digital cameras 30 to capture image data, and then retrieves the image data and stores the image data onto the mass storage device 50. Once the image data is stored on the mass storage device 50, the image data may be exported to an external computer or image processing system by the external communication interface 46.

The process of capturing an image is illustrated by the flowchart shown in FIG. 7. The image capture process may be started when a command is received by the external communication interface 46, or based on an internally programmed schedule. Once started, the controller 60 issues a command to each of the digital cameras 30 to set correct exposure parameters, as indicated by block 102. Once the exposure parameters are set, the digital cameras 30 are simultaneously commanded to capture an image, indicated at block 104. It is important to note that as near simultaneous capture of all images as possible is essential to accurate and error-free 3-dimensional modeling of the image data.

Ideally, a digital control line will be used to issue a digital control signal to each of the digital cameras 30 simultaneously. Alternatively, a “fire” command could be sent individually to each digital camera 30 using a command and data interface. If the cameras are individually commanded, a good rule of thumb is that all of the cameras should be commanded within of the exposure time. For example, if an exposure time of 1 ms is used, all of the cameras should be commanded to fire within 0.5 ms.

Once the cameras have fired, as block 106 indicates, the image data is retrieved and stored. Each image from each camera is stored as an individual file. The file may include embedded metadata along with the image data. These image files should be named to identify the exposure, such as by time-stamp, and to identify the camera. The files are stored on the mass storage device 44. If no more pictures are to be taken, a decision evaluated at block 108, then the image data is delivered for processing. The image data may be made available for export by the external communication interface 46 on request by an external processing system or the pictures may be immediately delivered, indicated at block 110. If additional images in a sequence are to be taken, the process returns either to block 102 to set a new exposure or to block 104 to immediately capture a new image.

Still images may be recorded individually or in sequence. Image sequences may be used for 3-dimensional animation or even a 3-dimensional movie. Additionally, multiple digital 3D/360° camera systems may be used in cooperation at separate locations to gather more comprehensive 3-dimensional image data for a larger scene or region.

It is to be understood that the present invention is not limited to the embodiments described above, but encompasses any and all embodiments within the scope of the following claims. 

I claim:
 1. A method for calibrating a camera system having a plurality of cameras on a housing, comprising: aligning the housing to a coordinate system; calibrating each camera of the plurality of cameras with respect to the coordinate system, wherein calibrating includes: exposing each pixel in the camera to two distinct points, wherein the locations of the two distinct points within the coordinate system are known, determining a pixel vector for each pixel based on the locations of the two distinct points, and generating a pixel vector map including pixel vectors for each of the pixels in the camera; and generating a composite pixel vector map including pixel vector maps for each of the plurality of cameras.
 2. The method of claim 1, wherein the coordinate system is a three-dimensional coordinate system.
 3. The method of claim 2, wherein the two distinct points include a first point being a camera reference point and a second point being on an object in an image captured by the camera.
 4. The method of claim 3, wherein the camera reference point is a center of the camera.
 5. The method of claim 1, further including determining the locations of the two distinct points based on a location of the camera and a location of a plurality of axes defining the coordinate system.
 6. The method of claim 5, wherein the plurality of axes are each defined by a line passing through the housing.
 7. The method of claim 6, wherein determining the location of one of the two distinct points includes determining a distance from the camera to each of the plurality of lines passing through the housing.
 8. The method of claim 7, wherein determining the location of the other of the two distinct points includes determining a distance an object in a field of view of the camera to each of the plurality of lines passing through the housing.
 9. The method of claim 6, further including determining a location of each of the cameras, including: determining a coordinate location of each of the plurality of cameras within the coordinate system based on the plurality of lines, and determining a distance between each of the plurality of a cameras and at least one other camera based on the coordinate locations.
 10. The method of claim 9, wherein the composite pixel vector map further includes the locations of each of the cameras.
 11. A digital camera system, comprising: a camera housing aligned to a coordinate system; a plurality of digital cameras having overlapping fields of view rigidly mounted to the housing; a mass storage device storing image data; and a controller in communication with the plurality of digital cameras and the mass storage device, the controller configured to calibrate the camera system, including: exposing each pixel in the camera to two distinct points, wherein the locations of the two distinct points within the coordinate system are known, determining a pixel vector for each pixel based on the locations of the two distinct points, generating a pixel vector map including pixel vectors for each of the pixels in the camera, and generating a composite pixel vector map including pixel vector maps for each of the plurality of cameras.
 12. The system of claim 11, wherein the coordinate system is a three-dimensional coordinate system.
 13. The system of claim 12, wherein the two distinct points include a first point being a camera reference point and a second point being on an object in an image captured by the camera.
 14. The system of claim 13, wherein the camera reference point is a center of the camera.
 15. The system of claim 11, wherein the controller is further configured to determine the locations of the two distinct points based on a location of the camera and a location of a plurality of axes defining the coordinate system.
 16. The system of claim 15, wherein the plurality of axes are each defined by a line passing through the housing.
 17. The system of claim 16, wherein determining the location of one of the two distinct points includes determining a distance from the camera to each of the plurality of lines passing through the housing.
 18. The system of claim 17, wherein determining the location of the other of the two distinct points includes determining a distance an object in a field of view of the camera to each of the plurality of lines passing through the housing.
 19. The system of claim 16, wherein the controller is further configured to determine a location of each of the cameras, including: determining a coordinate location of each of the plurality of cameras within the coordinate system based on the plurality of lines, and determining a distance between each of the plurality of a cameras and at least one other camera based on the coordinate locations.
 20. The system of claim 19, wherein the composite pixel vector map further includes the locations of each of the cameras. 